Transferring data between applications

ABSTRACT

In one embodiment, a method for transferring web browser data between web browsers includes collecting browser data pertaining to a first web browser, packaging the browser data into an intermediate format, and storing the packaged data for a subsequent import into a second web browser.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.12/869,346, filed Aug. 26, 2010, which is a continuation of U.S.application Ser. No. 11/096,859, filed Mar. 31, 2005, now U.S. Pat. No.7,805,495, the disclosures of which are incorporated herein byreference.

FIELD OF INVENTION

The field of invention relates generally to transferringapplication-specific data between applications, and more particularly,to transferring web browser data between web browsers.

BACKGROUND

A web browser is an application program that provides a way to look atand interact with information on the Internet. A web browser typicallyuses the Hypertext Transfer Protocol (HTTP) to make requests of webservers throughout the Internet on behalf of the browser user. Known webbrowsers include, for example, Microsoft® Internet Explorer (IE),Netscape® Navigator, Opera browser, Firefox browser and Lynx browser.

Each web browser is associated with a set of browser data that includes,for example, bookmarks, security settings, general settings, links topages visited by a user, a home page, cookie settings, user interface(UI) elements (e.g., toolbar positions and visibility), etc. A user maydecide to switch to a different web browser. For example, the user mayswitch to a different web browser installed on the same or differentcomputer, or to a different instance of the same web browser installedon the same or different computer. Currently, when a user switches to anew IE browser, the user can transfer bookmarks from an old IE browserto the new IE browser. However, the user has to manually enter the restof the browser data for the new web browser. In addition, if the two webbrowsers are of different types (e.g., an old web browser is NetscapeNavigator and a new web browser is Microsoft IE), the user may not beable to transfer any of the old web browser data to the new browser.

Thus, what is desired is a method or system that helps overcome one ormore of the above-described limitations.

SUMMARY

In one embodiment, a method for transferring web browser data betweenweb browsers includes collecting browser data pertaining to a first webbrowser, packaging the browser data into an intermediate format, andstoring the packaged data for a subsequent import into a second webbrowser.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example and notlimitation in the figures of the accompanying drawings, in which likereferences indicate similar elements and in which:

FIG. 1 presents a diagram illustrating an overview of one embodiment ofthe present invention;

FIG. 2 is a block diagram illustrating an architecture in which oneembodiment of the present invention may be implemented;

FIG. 3 is a flow diagram of one embodiment of a method for exporting webbrowser data;

FIG. 4 presents a flow diagram of one embodiment of a method forimporting web browser data; and

FIG. 5 is a block diagram of one embodiment of a computer system.

DETAILED DESCRIPTION

A method and system for transferring web browser data between webbrowsers is described. The web browser data includes various propertysettings specific to a current instance of the web browser by thecurrent instance of the web browser. For example, the web browser datamay include bookmarks, security settings, general settings, links todocuments accessed by a user, information specifying frequency and timeswhen the documents were accessed (e.g., to determine which links shouldbe displayed in the “already-visited” color, or to power the historypane), a home page, cookie settings, user interface (UI) elements,intermediate files maintained by the web browser, profile/autofill data(e.g., information maintained by a browser for “My Profile” option of abusiness card tool), password data (e.g., a subset of filled in forms),input history data (e.g., a list of data filled in by a user for textboxes and other web forms encountered by the user), popup blocker andwhitelisted sites data, data identifying language and character set,accessibility data, etc. UI elements associated with the web browser mayspecify, for example, visibility of toolbars in the browser windows,positioning of toolbars within the browser window, visibility of buttonson a toolbar, positioning of buttons on the toolbar, color settings,background images, etc. Intermediate files maintained by the web browsermay include, for example, cached documents viewed by the user, plug-inexecutable files (e.g., plug-ins for displaying different types of audioand video messages), browsing history records, and various temporaryfiles used by the web browser.

In one embodiment, a user may request to export web browser datapertaining to the current web browser. For example, the user may issuesuch a request by pressing an export settings button on a toolbar in thebrowser window. In response to the user request, the web browser data isexported from the current web browser, packaged into an intermediateformat and stored in a designated data store. The designated data storemay be on the same computer as the present web browser or on a servercoupled to this computer via a network.

Subsequently, when the user issues a request to import the web browserdata onto a new web browser, the stored web browser data is retrievedand applied to the new web browser. The new web browser may be adifferent web browser installed on the same or different computer. Forexample, the old web browser may be Microsoft®Internet Explorer (IE) andthe new web browser may be Netscape® Navigator. Alternatively, the newweb browser may be a different instance of the same web browser (e.g.,the IE browser) installed on the same or different computer.

FIG. 1 presents a diagram illustrating an overview of one embodiment ofthe present invention.

Referring to FIG. 1, a browser window 102 controlled by a first webbrowser includes an export settings button 108. When a user presses thebutton 108, the web browser data pertaining to the first web browser 102is gathered, packaged into an intermediate format, and stored in a datastore 106. The data store 106 may be on the same computer as the firstweb browser or on a server coupled to this computer via a network (e.g.,a public network or a local area network).

A browser window 104 is controlled by a second web browser. The secondweb browser may be a different web browser installed on the same ordifferent computer, or a different instance of the same web browserinstalled on the same or different computer. The browser window 104includes an import settings button 10. When the user presses the button10, the web browser data pertaining to the first web browser isretrieved from the data store 106 and applied to the second web browser.In one embodiment, if the second web browser supports only a subset ofthe web browser data pertaining to the first web browser, only the webbrowser data supported by the second web browser is imported onto thesecond web browser.

It should be noted that the techniques described herein are not limitedto web browser applications and can be used with various otherapplications. For example, these techniques may be used to transfersettings between different instances of Microsoft Word or MicrosoftPowerPoint, or to transfer settings from Microsoft Word to MicrosoftPowerPoint and vice versa. In another example, these techniques may beused to transfer settings between a web browser and some otherapplication (e.g., Microsoft Word).

In addition, references throughout this specification to “oneembodiment” or “an embodiment” indicate that a particular feature,structure, or characteristic described in connection with the embodimentis included in at least one embodiment. Thus, the appearances of thephrases “in one embodiment” or “in an embodiment” in various placesthroughout this specification are not necessarily all referring to thesame embodiment.

Further, the term “document” as used herein broadly refers to variousitems, such as files, directories, or other data or information that maybe stored, received, sent, created or otherwise processed by one or morecomputing devices. For example, a document may include any file createdon a computing system. The term file as used herein includes acollection of bytes or bits stored as an individual entity. For example,a file may be a binary file, a text file, or a combination thereof, suchas a word processor file, a data file, a spreadsheet, a workbook, animage, a drawing, an audio file, a video file, an audio/visual file, amultimedia file, an archive file, a batch file, a source file, an objectfile, or an executable program. The term file may also refer to a filesystem object which is accessed as though the object were a file. Adocument may be linked to one or more other documents, such as via ahyperlink. A document may include a web page, such as a file coded in amarkup language (e.g. hypertext markup language (HTML) or extensiblemarkup language (XML)), a file coded in a scripting language (e.g.JavaScript, Active Server Pages (ASP), or Perl), or a file viewed in aweb browser (e.g. a portable document format (PDF), an image file ortext file). A document may reside on a single system, or may be accessedby one or more systems via a network, e.g. an Intranet or the Internet.

Furthermore, the particular features, structures, or characteristics maybe combined in any suitable manner in one or more embodiments.

System Architecture

FIG. 2 is a block diagram illustrating an architecture 200 in which oneembodiment of the present invention may be implemented. The architecture200 includes client devices 208 and 220, a server 202, and a network206.

The client devices 208 and 220 may be personal computers (PCs), wirelesstelephones, palm-sized computing devices, personal digital assistants(PDAs), consumer electronic devices, etc. The client devices 208 and 220are coupled to the server 202 via the network 206, which may be a publicnetwork (e.g., Internet) or a private network (e.g., Ethernet or a localarea Network (LAN)).

The client devices 208 and 220 host web browsers 210 and 222respectively. The web browsers 210 and 222 may be of the same type(e.g., the IE browser) or of different types (e.g., the IE browser andthe Firefox browser). The client devices 208 and 220 also includebrowser settings modules 212 and 224 respectively. The browser settingsmodule 212 or 224 may be a part of the corresponding web browser 210 or220, or a part of some other application (e.g., Google® Firefox Toolbar,Google® Toolbar for Windows, etc.) running on the corresponding clientdevice 208 or 220, or an independent application running on thecorresponding client device 208 or 220. In one embodiment, the module212 is part of a first instance of a specific application (e.g., IEbrowser or Google Toolbar), and the module 224 is part of a secondinstance of the same application. Alternatively, the module 212 may be apart of one application (e.g., IE browser) and the module 224 may be apart of another application (e.g., Yahoo Toolbar).

The browser settings modules 212 and 224 communicate with the server202. In one embodiment, both modules 212 and 224 communicate with theserver 202 using the same network protocol (e.g., hypertext transferprotocol (HTTP). Alternatively, the modules 212 and 224 communicate withthe server 202 using different network protocols (e.g., HTTP and filetransfer protocol (FTP)).

In one embodiment, each of the browser settings modules 212 and 220includes an exporter (i.e., exporters 214 and 226) and an importer(e.g., importers 216 and 228). Alternatively, the browser settingsmodule 212 or 220 may only include either the exporter or the importerbut not both of them.

The exporter 214 or 226 is responsible for collecting web browser datapertaining to the web browser 210 or 222 respectively, packaging thecollected data into a canonical format, and sending the web browser datain the canonical format to the server 202, which then stores this webbrowser data in a browser settings database 204. A canonical formatreferred to herein is an intermediate format that provides a flexibleway for describing data and is understandable by various browsersettings modules including modules 212 and 224. Examples of thecanonical format may include the extension markup language (XML) format,the binary format, etc.

The browser settings database 204 stores web browser data for variousweb browsers. In an another embodiment, the browser settings database204 may be located on the client device 208 or 220. Alternatively, theweb browser data may be stored using a different storage means (e.g., afile on disk).

The importer 216 or 228 is responsible for importing, onto the webbrowser 210 or 222 respectively, web browser data pertaining to adifferent web browser. For example, the importer 216 may import webbrowser data pertaining to the web browser 222 onto the web browser 210.In one embodiment, if the web browser targeted for import supports onlya subset of web browser data pertaining to the source web browser, theimporter extracts the subset supported by the target web browser fromthe relevant web browser data stored in the database 204 and applies theextracted web browser data to the target web browser.

In one embodiment, the importer 216 or 228 can only import specific webbrowser data. The importer 216 or 228 may determine whether a webbrowser data item can be imported by comparing a data type tag assignedto the web browser data item by the exporter 214 or 226 with apredefined list of allowed data types. In one embodiment, if theimporter 216 or 228 encounters a web browser data item of an unknowntype, heuristics rules are utilized to determine how to handle this webbrowser data item.

In one embodiment, the browser settings module 212 or 224 displays anexport settings button and/or an import settings button as part of atoolbar or somewhere else within the browser window. When the userpresses the export settings button, the exporter 214 or 226 initiatesthe export of relevant web browser data. Similarly, when the userpresses the import settings button, the importer 216 or 228 initiatesthe import of desired web browser data.

Alternatively, the user may request export or import of browser settingsby selecting a specific option in a web browser window (e.g., byselecting an entry in Tools dropdown list) or somewhere else on thescreen (e.g., on the control panel, a separate application, etc.), orpressing a specific key on the keyboard, or using some other method.

In one embodiment, when a user issues a request to export/import webbrowser settings, the user is allowed to specify the desired settings.For example, once the user presses the export settings button, the useris presented with a list of settings that can be exported, from whichthe user can select some settings for exporting.

In another embodiment, the export occurs automatically (i.e., without auser request) at regular intervals (e.g., for a backup function).Similarly, the import may also occur automatically at regular intervals(e.g., to keep two computers synchronized).

Description of Process

FIG. 3 presents a flow diagram of one embodiment of a method 300 forexporting web browser data. The method may be performed by processinglogic, which may comprise hardware, software, or a combination of both.Processing logic may reside either in a client device, or partially orentirely in a separate device and/or system(s).

At block 302, processing logic receives a user request to export webbrowser data pertaining to a current web browser (referred to as thesource web browser). As discussed above, the web browser data mayinclude bookmarks, security settings, general settings, links todocuments accessed by a user, a home page, cookie settings, userinterface (UI) elements, intermediate files maintained by the webbrowser, etc. UI elements associated with the web browser may specify,for example, visibility of toolbars in the browser windows, positioningof toolbars within the browser window, visibility of buttons on atoolbar, positioning of buttons on the toolbar, color settings,background images, skins, themes, etc. Intermediate files maintained bythe web browser may include, for example, cached documents viewed by theuser, plug-in executable files (e.g., plug-ins for displaying differenttypes of audio and video messages), browsing history records, andvarious temporary files used by the web browser. In one embodiment,processing logic receives the user request when the user presses anexport settings button in the browser window. In one embodiment, theuser request specifies which browser settings need to be exported.Alternatively, the user request covers all web browser data pertainingto the source web browser.

At processing block 304, processing logic collects the web browser dataaccording to the user request.

At processing block 306, processing logic packages the collected webbrowser data into an intermediate format (e.g., an XML format, a binaryformat, etc.).

At processing block 308, processing logic stores the formatted webbrowser data in a browser settings data store. In one embodiment, thisdata store resides on the same client device as the source web browser.Alternatively, the browser settings data store resides on a server.

FIG. 4 presents a flow diagram of one embodiment of a method 400 forimporting web browser data. The method may be performed by processinglogic, which may comprise hardware, software, or a combination of both.Processing logic may reside either in a client device, or partially orentirely in a separate device and/or system(s).

At block 402, processing logic receives a user request to import webbrowser data onto a current web browser (referred to as the target webbrowser). In one embodiment, the user request identifies the source webbrowser whose data is to be imported onto the target web browser (e.g.,by identifying the instance of the web browser or the type of the webbrowser). In one embodiment, the user request specifies which browsersettings need to be imported. For example, the user may be presentedwith a list of available settings to allow the user to select thedesired settings. Alternatively, the user request covers all web browserdata pertaining to the source web browser.

The source web browser and the target web browser may reside on the sameclient device or different client devices and may be of the same browsertype or different browser types.

At block 404, processing logic retrieves web browser data pertaining tothe source web browser from a data store. In one embodiment, processinglogic retrieves the web browser data upon verifying that the targetimporter has permissions to access the web browser data. The data storemay reside on the same client device as the target web browser, on theclient device hosting the source web browser, or on a server. The webbrowser data is stored in the data store in an intermediate format(e.g., XML or binary format). In one embodiment, if the user requestspecifies certain browser settings to be imported, processing logicextracts the specified settings from the retrieved web browser data.

At block 406, processing logic maps the web browser data to propertiesof the target web browser. If the target web browser does not supportall of the available browser settings, processing logic discards theportion of web browser settings that is not supported by the target webbrowser.

At block 408, processing logic applies the mapped data to the target webbrowser.

Exemplary Computer System

FIG. 5 shows a diagrammatic representation of a machine in the exemplaryform of a computer system 500 within which a set of instructions, forcausing the machine to perform any one or more of the methodologiesdiscussed herein, may be executed. In alternative embodiments, themachine operates as a standalone device or may be connected (e.g.,networked) to other machines. In a networked deployment, the machine mayoperate in the capacity of a server or a client machine in server-clientnetwork environment, or as a peer machine in a peer-to-peer (ordistributed) network environment. The machine may be a personal computer(PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant(PDA), a cellular telephone, a web appliance, a network router, switchor bridge, or any machine capable of executing a set of instructions(sequential or otherwise) that specify actions to be taken by thatmachine. Further, while only a single machine is illustrated, the term“machine” shall also be taken to include any collection of machines thatindividually or jointly execute a set (or multiple sets) of instructionsto perform any one or more of the methodologies discussed herein.

The exemplary computer system 500 includes a processor 502 (e.g., acentral processing unit (CPU) a graphics processing unit (GPU) or both),a main memory 504 and a static memory 506, which communicate with eachother via a bus 508. The computer system 500 may further include a videodisplay unit 510 (e.g., a liquid crystal display (LCD) or a cathode raytube (CRT)). The computer system 500 also includes an alphanumeric inputdevice 512 (e.g., a keyboard), a cursor control device 514 (e.g., amouse), a disk drive unit 516, a signal generation device 518 (e.g., aspeaker) and a network interface device 520.

The disk drive unit 516 includes a machine-readable medium 522 on whichis stored one or more sets of instructions (e.g., software 524)embodying any one or more of the methodologies or functions describedherein. The software 524 may also reside, completely or at leastpartially, within the main memory 504 and/or within the processor 502during execution thereof by the computer system 500, the main memory 504and the processor 502 also constituting machine-readable media.

The software 524 may further be transmitted or received over a network526 via the network interface device 520.

While the machine-readable medium 522 is shown in an exemplaryembodiment to be a single medium, the term “machine-readable medium”should be taken to include a single medium or multiple media (e.g., acentralized or distributed database, and/or associated caches andservers) that store the one or more sets of instructions. The term“machine-readable medium” shall also be taken to include any medium thatis capable of storing, encoding or carrying a set of instructions forexecution by the machine and that cause the machine to perform any oneor more of the methodologies of the present invention. The term“machine-readable medium” shall accordingly be taken to included, butnot be limited to, solid-state memories, optical and magnetic media, andcarrier wave signals.

The processes described above can be stored in a memory of a computersystem as a set of instructions to be executed. In addition, theinstructions to perform the processes described above couldalternatively be stored on other forms of machine-readable media,including magnetic and optical disks. For example, the processesdescribed could be stored on machine-readable media, such as magneticdisks or optical disks, which are accessible via a disk drive (orcomputer-readable medium drive). Further, the instructions can bedownloaded into a computing device over a data network in a form ofcompiled and linked version.

Alternatively, the logic to perform the processes as discussed abovecould be implemented in additional computer and/or machine readablemedia, such as discrete hardware components as large-scale integratedcircuits (LSI's), application-specific integrated circuits (ASIC's),firmware such as electrically erasable programmable read-only memory(EEPROM's); and electrical, optical, acoustical and other forms ofpropagated signals (e.g., carrier waves, infrared signals, digitalsignals, etc.); etc.

In the foregoing specification, the invention has been described withreference to specific exemplary embodiments thereof It will, however, beevident that various modifications and changes may be made theretowithout departing from the broader spirit and scope of the invention asset forth in the appended claims. The specification and drawings are,accordingly, to be regarded in an illustrative rather than a restrictivesense.

What is claimed is:
 1. A method comprising: collecting, by one or moredevices, browser data associated with a first web browser, the collectedbrowser data being in a first format; packaging, by the one or moredevices, the collected browser data into a second format to formtransformed browser data, the first format being different than thesecond format; assigning a tag to each of one or more data itemsincluded in the collected browser data, each tag representing a datatype of a corresponding one of the one or more data items; and sending,by the one or more devices and to a device associated with a second webbrowser, the transformed browser data and the tag assigned to each ofthe one or more data items, the second web browser utilizing browserdata in a third format that is different than the second format.
 2. Themethod of claim 1, where the second format includes an extensible markuplanguage (XML) format.
 3. The method of claim 1, where the one or moredevices include the device associated with the second web browser. 4.The method of claim 1, where a type of the first web browser isdifferent than a type of the second web browser and the first format isdifferent than the third format, or where the type of the first webbrowser is a same type of web browser as the type of the second webbrowser.
 5. The method of claim 1, further comprising: receiving arequest to import the collected browser data to the second web browser;and determining whether the one or more data items are supported by thesecond browser, where sending the transformed browser data and the tagassigned to each of the one or more data items includes: importing aportion of the transformed browser data and the tag assigned to each ofa corresponding portion of the one or more data items.
 6. The method ofclaim 5, where receiving the request to import the collected browserdata to the second web browser includes: detecting selection of anoption, of a web browser window associated with the first web browser,to import one or more settings of the first web browser, where therequest to import the collected browser data is received based on theselection of the option to import the one or more settings of the firstweb browser.
 7. The method of claim 5, further comprising: determining,based on the tag assigned to each of the one or more data items, that: afirst portion of the one or more data items is supported by the secondbrowser, and a second portion of the one or more data items is notsupported by the second browser, where the first portion is differentthan the second portion; and importing, to the second web browser, thefirst portion of the one or more data items, where the second portion ofthe one or more data items is not imported to the second web browser,and where the corresponding portion of the one or more data itemsincludes the first portion of one or more data items and none of thesecond portion of the one or more data items.
 8. The method of claim 1,where the one or more data items include one or more of: user interface(UI) data, settings data, browsing history data, bookmark data, profiledata, autofill data, password data, popup blocker data, informationidentifying frequency of accessing documents, information identifyingwhen documents are accessed, or information identifying plug-ins, andwhere assigning the tag to each of the one or more data items includes:assigning a tag to one or more of the UI data, the settings data, thebrowsing history data, the bookmark data, the profile data, the autofilldata, the password data, the popup blocker data, the informationidentifying frequency of accessing documents, the informationidentifying when documents are accessed, or the information identifyingplug-ins.
 9. The method of claim 1, where collecting the browser dataassociated with the first web browser, packaging the collected browserdata into the second format, assigning the tag to each of the one ormore data items are performed at particular time intervals, the methodfurther comprising: storing, on a server device, the transformed browserdata and the tag assigned to each of the one or more data items, wheresending the transformed browser data and the tag assigned to each of theone or more data items includes: sending the stored browser data and thestored tag assigned to each of the one or more data items to the secondweb browser based on the particular time intervals.
 10. Acomputer-implemented method comprising: receiving a request to exportdata associated with a first web browser; detecting, based on thereceived request, selection of at least one setting from a plurality ofsettings associated with the data associated the first web browser;obtaining a portion of the data associated with the first web browser,where the obtained portion of the data corresponds to the at least onesetting, and where the obtained portion of the data is associated with afirst format; packaging the obtained portion of the data into a secondformat, that is different than the first format, to form transformeddata, where the second format is adapted to be imported by a second webbrowser; assigning a tag to each of one or more data items included inthe obtained portion of the data, each tag representing a data type of acorresponding one of the one or more data items; and storing thetransformed data and the tag assigned to each of the one or more dataitems on a storage system.
 11. The computer-implemented method of claim10, where the second format includes an extensible markup language (XML)format,
 12. The computer-implemented method of claim 11, where thestorage system is a remotely located server, and the storing is doneusing a network.
 13. The computer-implemented method of claim 10,further comprising: presenting the plurality of settings associated withthe data in response to receiving the request, where the at least onesetting is selected from the presented plurality of settings associatedwith the data.
 14. The computer-implemented method of claim 10, furthercomprising: detecting selection of at least one other setting from theplurality of settings; obtaining another portion of the data associatedwith the first web browser; where the obtained other portion of the datacorresponds to the at least one other setting; and storing the obtainedother portion of the data; where the obtained other portion of the datais sent to at least one of the second web browser or a third webbrowser.
 15. The computer-implemented method of claim 10, where thefirst web browser is presented in a web browser window, and wherereceiving the request to export the data associated with the first webbrowser comprises: detecting selection of a button associated with theweb browser window; or detecting selection of a particular option from adropdown list associated with the web browser window.
 16. Thecomputer-implemented method of claim 10, further comprising: comparingthe tag assigned to each of the one or more data items with one or moretypes of data that are associated with the second web browser;determining, based on a result of the comparison, that only a portion ofthe one or more data items corresponding to the one or more types ofdata that are associated with the second browser, where the portion ofthe one or more data items is less than an entirety of the one or moredata items, and where only the portion of the one or more data items issent to the second web browser.
 17. The computer-implemented method ofclaim 10, where the device is associated with a third web browser, wherethe third web browser is presented in a web browser window, and wherethe method further comprises: detecting selection of an option, in theweb browser window, to import the data, associated with the first webbrowser, to the third web browser; detecting selection of one or moresettings from the plurality of settings after detecting the selection ofthe option; and importing one or more portions of the data, associatedwith the first web browser, to the third web browser, where the one ormore portions correspond to the one or more settings.
 18. Thecomputer-implemented method of claim 17, further comprising: obtainingthe one or more portions in response to detecting the selection of oneor more settings; and assigning a tag to each of a plurality of dataitems included in the obtained one or more portions of the data, eachtag representing a data type of a corresponding one of the plurality ofdata items included in the obtained one or more portions of the data.19. The computer-implemented method of claim 10, where the one or moredata items include one or more of: user interface (UI) data, settingsdata, browsing history data, bookmark data, profile data, autofill data,password data, popup blocker data, information identifying frequency ofaccessing documents via the first web browser, information identifyingwhen documents are accessed via the first web browser, or informationidentifying plug-ins, where assigning the tag to each of the one or moredata items includes: assign a tag to one or more of the UI data, thesettings data, the browsing history data, the bookmark data, the profiledata, the autofill data, the password data, the popup blocker data, theinformation identifying frequency of accessing documents via the firstweb browser, the information identifying when documents are accessed viathe first web browser, or the information identifying plug-ins.
 20. Thecomputer-implemented method of claim 10, where the stored data and thestored tag assigned to each of the one or more data items are sent to adevice associated with the second web browser, the second web browserutilizing data in a third format that is different than the secondformat.
 21. A computer-readable memory device comprising: one or moreinstructions, which when executed by at least one processor, cause theat least one processor to receive a request to export data associatedwith a first web browser, one or more instructions, which when executedby the at least one processor, cause the at least one processor todetect, based on the received request, selection of at least one settingfrom a plurality of settings associated with the data associated thefirst web browser, one or more instructions, which when executed by theat least one processor, cause the at least one processor to obtain aportion of the data associated with the first web browser, where theobtained portion of the data corresponds to the at least one setting,and where the obtained portion of the data is associated with a firstformat, one or more instructions, which when executed by the at leastone processor, cause the at least one processor to package the obtainedportion of the data into a second format, that is different than thefirst format, to form transformed data, where the second format isadapted to be imported by one or more second web browsers, one or moreinstructions, which when executed by the at least one processor, causethe at least one processor to assign a tag to each of one or more dataitems included in the obtained portion of the data, each tagrepresenting a data type of a corresponding one of the one or more dataitems, and one or more instructions, which when executed by the at leastone processor, cause the at least one processor to store the transformeddata and the tag assigned to each of the one or more data items.
 22. Thecomputer-readable memory method of claim 21, where the at least oneprocessor is associated with a third web browser, where the third webbrowser is presented in a web browser window, and where thecomputer-readable memory device further includes: one or moreinstructions to detect selection of an option, in the web browserwindow, to import the data, associated with the first web browser, tothe third web browser, one or more instructions to detect selection ofone or more settings from the plurality of settings after the selectionof the option has been detected, and one or more instructions to importone or more portions of the data, associated with the first web browser,to the third web browser, where the one or more portions correspond tothe one or more settings.
 23. The computer-readable memory method ofclaim 22, where the first web browser is presented in a web browserwindow, and where the one or more instructions to receive a request toexport data associated with the first web browser includes at least oneof: one or more instructions to detect selection of a button associatedwith the web browser window, or one or more instructions to detectselection of a menu item associated with the web browser window.
 24. Thecomputer-readable memory method of claim 22, where the stored data andthe stored tag assigned to each of the one or more data items are sentto one or more devices associated with the one or more second webbrowsers, the one or more second web browsers utilizing data in a thirdformat that is different than the second format, and where the secondformat includes an extensible markup language (XML) format.